模型(Model)、視圖(View) 、控制器(Controller)
昨天跟大家講了控制器(Controller),今天就跟大家講模型(Model)和視圖(View)。
進行資料管理和資料庫設計,所有是和數據庫有關的。
在建立跟數據庫有關的檔案時(.java),我們就需要準備一些資料。
第一: 一個數據庫設計工具(database design tool) [Spring Boot沒有內置,需要另行自選一個合適的]
第二: 數據庫設計(database design) 需要預先設計[數據庫的設計可以很複雜]
第三: 用作測試的數據(可有可無,但最好是有)
大部份都是在客戶端的瀏覽器以.html文件的形式展示出來,也有其他類型(例如 .jsp)。
如果展示出來的東西會應用數據庫,就要配合模型(Model)-數據庫的資料。
如果展示出來的東西不會應用數據庫,就可以不用配合模型(Model)。
以下是一個Spring Boot專案的完整目錄結構。
1, 所有Controller/ Model都會存放在Java Resources > src/main/java 底下。
在底下可以建立不同的package,而package是可以用作檔案的分類。
例如 Controller有屬於Controller的package, Model有屬於Model的package。
2, 所有View的文件都會存放在Java Resources > src/main/resources 底下。
當你在客戶端的瀏覽器輸一個網址時就會觸發。
假設你輸入了http://localhost:8080/
系統就會先在去有@RestController注解的.java (即 Controller) 去查找有沒有一個@RequestMapping("/")的設定。如果是有的話,就要運行它下面的程式,否則就會報錯,同時會返回一個有錯誤提示的頁面說找不到相關設定。
@RequestMapping("/")
public String hello(){
return "Hey, Spring Boot 的 Hello World !";
}
根據上面的例子,是有程式的,會運行public String hello()。
同時會查看程式內是否有向數據庫的請求,如果有的話就要根據相關設定去對應的數據庫獲取資料。否則就不會自己跑去找數據庫。
最後直到遇到return,return會返會相對應的頁面(例如: return “index”; 就會顯示index.html的頁面)。如果沒有找到index.html就會直接把index字串顯示在客戶端的瀏覽器的頁面上。
以上是Spring MVC的基礎講解,在往後的日子會再詳細深入講解各部分的核心原理。
如果有興趣想繼續了解和學習的話,歡迎訂閱及留意小弟的文章。